package khl.ooo.db;

import java.util.ArrayList;

public class OpleidingDb extends FileDb {
	private String bestandsNaam;
	private ArrayList<String> zinnen;
	
	public OpleidingDb() throws DbException {

		this.setBestandsNaam("opleiding.txt");
		this.setZinnen(this.lees(this.getBestandsNaam()));
	}
	
	private void setBestandsNaam(String bestand) {
		if(bestand != null && bestand instanceof String) {
			this.bestandsNaam = bestand;
		} else {
			throw new IllegalArgumentException();
		}
	}
	private String getBestandsNaam() {
		return this.bestandsNaam;
	}
	
	private void setZinnen(ArrayList<String> zinnen) {
		System.out.println(zinnen.size());
		if(zinnen != null) {
			this.zinnen.addAll(zinnen);
		}
	}
	public ArrayList<String> getZinnen() {
		return this.zinnen;
	}
	
	
	//TODO commentaar hierop was voor we 't tussen /** */ hadden gestoken, er toch bijgestoken, kan van enig nut zijn:
	//TODO methode in vakDB om vakken voor opleiding op te vragen
	/*private HashMap<String, Opleiding> opleidingen;
	private HashMap<String, Vak> vakken;
	private VakDb vakdb;
	public OpleidingDb() {
		vakdb = new VakDb();
		vakken = vakdb.getVakken();
		
		opleidingen = new HashMap<String, Opleiding>();
		
		Opleiding oplti1 = new Opleiding("TI1", "Toegepaste informatica 1");
			oplti1.addVak(vakken.get("BIS"));
			oplti1.addVak(vakken.get("BvP"));
			oplti1.addVak(vakken.get("BS1"));
			oplti1.addVak(vakken.get("Engels1"));
			oplti1.addVak(vakken.get("Frans1"));
			oplti1.addVak(vakken.get("Netwerken1"));
			oplti1.addVak(vakken.get("CS"));
			oplti1.addVak(vakken.get("MEV"));
			oplti1.addVak(vakken.get("OOP"));
			oplti1.addVak(vakken.get("PAT"));
			oplti1.addVak(vakken.get("DM"));
			oplti1.addVak(vakken.get("Webdesign"));
			oplti1.addVak(vakken.get("Wiskunde1"));
		opleidingen.put(oplti1.getCode(), oplti1);
			
		Opleiding oplti2 = new Opleiding("TI2", "Toegepaste informatica 2");
			oplti2.addVak(vakken.get("Communicatie"));
			oplti2.addVak(vakken.get("BS2"));
			oplti2.addVak(vakken.get("Engels2"));
			oplti2.addVak(vakken.get("Frans2"));
			oplti2.addVak(vakken.get("Netwerken2"));
			oplti2.addVak(vakken.get("DB"));
			oplti2.addVak(vakken.get("Dynweb"));
			oplti2.addVak(vakken.get("Fin Management"));
			oplti2.addVak(vakken.get("SA"));
			oplti2.addVak(vakken.get("OOO"));
			oplti2.addVak(vakken.get("PVGO"));
			oplti2.addVak(vakken.get("Wiskunde2"));
		opleidingen.put(oplti2.getCode(), oplti2);
		
		Opleiding oplti3 = new Opleiding("TI3", "Toegepaste informatica 3");
			oplti3.addVak(vakken.get("CapSel"));
			oplti3.addVak(vakken.get("Engels3"));
			oplti3.addVak(vakken.get("Frans3"));
			oplti3.addVak(vakken.get("Comp- en netwerkbeveiliging"));
			oplti3.addVak(vakken.get("IT management"));
			oplti3.addVak(vakken.get("IT recht"));
			oplti3.addVak(vakken.get("Stage"));
		opleidingen.put(oplti3.getCode(), oplti3);
	}
	
	public HashMap<String, Vak> getVakken(String oplCode) {
		if(oplCode != null && oplCode instanceof String) {
			if(opleidingen.containsKey(oplCode)) {
				return opleidingen.get(oplCode).getVakken();
			} else {
				throw new IllegalArgumentException();
			}
		} else {
			throw new IllegalArgumentException();
		}
	}
	

	public HashMap<String, Opleiding> getOpleidingen() {
		return opleidingen;
	}
	
	public void addOpleiding(Opleiding opl) {
		if(opl != null && opl instanceof Opleiding) {
			opleidingen.put(opl.getCode(), opl);
		}
	}
	*/
}
